#ifndef ALGORITHMSTATS_HPP_INCLUDED
#define ALGORITHMSTATS_HPP_INCLUDED

#include "TestingSet.hpp"
#include "Predictor.hpp"

#include <vector>
#include <string>

namespace TopologicalLearner
{
/**
  This class is used for collecting statistics about the prediction performance of the
  different prediction algorithms.
  */
class AlgorithmStats
{

public:


    /**
    * Given a Predictor, this function generates result data for a testing set and saves it to sFilename.
    * @param kT This is the testing set to use for prediction using this Predictor. The testing set specifies a set of
    * subgraphs of larger graphs.
    * @param kPredictor The predictor to use for prediction on the testing set.
    */
    double TestAll(TestingSet& kT, Predictor* pPredictor, std::string sFilename);
    //int TestAllGED(TestingSet kT, bool bBForce);

};
}

#endif // ALGORITHMSTATS_HPP_INCLUDED
